package fr.uniscol.dao.impl;

import static fr.uniscol.dao.impl.SQLNames.TABLE_UTILISATEURS;

import java.util.List;

import javax.sql.DataSource;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;

import fr.uniscol.dao.ILoginDao;
import fr.uniscol.dao.UniscolDaoSupport;
import fr.uniscol.dao.mapper.UserModelRowMapper;
import fr.uniscol.model.DefaultUser;
import fr.uniscol.model.IUniscolUser;

@Repository("loginDao")
public class LoginDaoImpl extends UniscolDaoSupport implements ILoginDao {

	private static final Logger log = Logger.getLogger(LoginDaoImpl.class);
	
	@Override
	public DefaultUser getUserWithPassword(String login, String password) {
		
		 
		List<DefaultUser> users = (List<DefaultUser>) getJdbcTemplate().query("SELECT * FROM " + TABLE_UTILISATEURS + " u WHERE login=? AND password=?",
										new Object[]{login, password},
										new UserModelRowMapper());
		
		if(users.isEmpty()){
			return null;
			
		}else if(users.size() == 1){
			return users.get(0);
			
		}else{
			log.error("Plusieurs utilisateurs trouvés avec le meme login !");
		}
		
		return null;
	}
}
